Recent research indicates that, in a data center network, about 90% of data flows belong to small data flows, also referred to as mice flows, that burst, have short duration, and have a very small flow length; and only 10% of data flows belong to large data flows, also referred to as elephant flows, that have long duration and have a huge flow length. A quantity of the elephant flows accounts only for 10% of a quantity of data flows of the entire network, but traffic of the elephant flows (such as, a quantity of data packets, or a total quantity of data flow bytes) accounts for 90% of total traffic of the entire data center network. According to an existing routing algorithm, such as Equal Cost Multi-Path (ECMP), data flows are routed and forwarded mostly using local information of a network, and therefore paths of these elephant flows are very likely to overlap, that is, different elephant flows use a same network link. Because bandwidth of the network link is limited, when multiple elephant flows use the same link, a case of network congestion occurs. On the contrary, some links are in a state of low utilization or even in an idle state. Occurrence of network congestion severely deteriorates running performance of this network, particularly for some data flows very sensitive to delay, such as voice communication.
An effective method for resolving the foregoing problem is: with reference to a global status of a network, a best route is selected for each data flow, and data flows are evenly distributed into the entire network, so as to avoid network congestion, and implement network load balancing. However, a quantity of data flows of a data center is huge, and for route optimization performed on each to-be-forwarded data flow, calculation complexity is huge, and feasibility is low. It is known that, 90% of traffic of the entire network results from elephant flows and a quantity of the elephant flows accounts only for 10% of a total quantity of data flows of the entire network. If a best route can be selected for the elephant flows, performance of the entire data center network may be well optimized. Dynamic route planning performed on the elephant flows, and selection of an optimal path for the elephant flows require that the elephant flows and mice flows be distinguished. Some existing techniques may be used for distinguishing the elephant flows and the mice flows. For example, periodic polling is a simple and direct solution for identifying the elephant flows. A principle of the solution is to collect statistics on a to-be-identified flow, for example, when traffic of the flow exceeds a threshold, or when duration of the flow exceeds a threshold, it is considered that the data flow is an elephant flow. However, a quantity of data flows in a network is huge, and therefore if traffic statistics are collected on each data flow, time and space overheads of the traffic statistics are both very huge, that is, a determining result is hysteretic, and very large buffer space is needed. Moreover, in an improved solution, initial screening is performed on data flows according to some priori knowledge, and traffic statistics are collected on data flows meeting a screening condition. The initial screening is generally performed by setting a flow table, and the flow table generally includes a port number, or an Internet Protocol (IP) address, or a transport protocol. If information about a flow matches one item of the flow table, or matches all items of the flow table, the data flow is forwarded to a traffic statistics collecting module for collecting traffic statistics, and if traffic of the flow exceeds a threshold, it is considered that the flow is an elephant flow, and a routing module selects an optimal path for the flow. However, in this method, a threshold needs to be preset, and a determining result cannot adapt to dynamic network changes, so that the determining result is imprecise.